package useless;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;

public class MainWindow {
    private static ArrayList<String> inputList = new ArrayList<>(); // 存储输入内容的列表

    public static ArrayList<String> getInputList() {
        return inputList;
    }

    public static void main(String[] args) {
        // 创建主窗口
        JFrame mainFrame = new JFrame("Main Window");
        mainFrame.setSize(400, 300);
        mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        mainFrame.setLayout(new BorderLayout());

        // 创建输出框
        JTextArea outputArea = new JTextArea();
        outputArea.setEditable(false);
        JScrollPane scrollPane = new JScrollPane(outputArea);
        mainFrame.add(scrollPane, BorderLayout.CENTER);

        // 创建按钮面板
        JPanel buttonPanel = new JPanel();
        buttonPanel.setLayout(new FlowLayout());
        mainFrame.add(buttonPanel, BorderLayout.SOUTH);

        // 创建add按钮
        JButton addButton = new JButton("Add");
        //mainFrame.add(addButton, BorderLayout.SOUTH);
        buttonPanel.add(addButton);

        // 创建show inputs按钮
        JButton showButton = new JButton("Show Inputs");
        buttonPanel.add(showButton);

        // 为add按钮添加监听器
        addButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                // 创建新窗口
                JFrame inputFrame = new JFrame("Input Window");
                inputFrame.setSize(300, 200);
                inputFrame.setLayout(new BorderLayout());

                // 创建输入框
                JTextField inputField = new JTextField();
                inputFrame.add(inputField, BorderLayout.CENTER);

                // 创建done按钮
                JButton doneButton = new JButton("Done");
                inputFrame.add(doneButton, BorderLayout.SOUTH);

                // 为done按钮添加监听器
                doneButton.addActionListener(new ActionListener() {
                    @Override
                    public void actionPerformed(ActionEvent e) {
                        // 获取输入内容
                        String inputText = inputField.getText();

                        // 添加到ArrayList
                        inputList.add(inputText);

                        // 在输出框中显示输入内容
                        outputArea.append(inputText + "\n");

                        // 关闭输入窗口
                        inputFrame.dispose();
                    }
                });

                // 显示新窗口
                inputFrame.setVisible(true);
            }
        });

        // 为show inputs按钮添加监听器
        showButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                // 获取ArrayList中的内容并显示在对话框中
                JOptionPane.showMessageDialog(mainFrame, String.join(", ", inputList), "All Inputs", JOptionPane.INFORMATION_MESSAGE);
            }
        });

        // 在程序运行中获取所有输入内容
        ArrayList<String> inputs = MainWindow.getInputList();
        System.out.println(inputs);


        // 显示主窗口
        mainFrame.setVisible(true);


    }
}
